package data {

	// Imports
	
	import data.*;
	
	// Classe
	
	public class Effet {
		
		// Attributs
		
		public  var _id    : int = 0;
		
		private var _type : String = Type.AUCUN;
		private var _elem : String = Elem.AUCUN;
		private var _min  : int  = 0;
		private var _max  : int  = 0;
		
		// Accesseurs
		
		public function getType() : String {
			return _type;
		}
		
		public function setType(type : String) : void {
			_type = type;
		}
		
		public function getElem() : String {
			return _elem;
		}
		
		public function setElem(elem : String) : void {
			_elem = elem;
		}
		
		public function getMin() : int {
			return _min;
		}
		
		public function setMin(min:int) : void {
			_min = min;
		}
		
		public function getMax() : int {
			return _max;
		}
		
		public function setMax(max:int) : void {
			_max = max;
		}
		
		// Constructeurs
		
		public function Effet(type : String = "", elem : String = "", min : int = 0, max : int = 0) {
			setKind(type, elem);
			setMin(min);
			setMax(max);
		}
		
		// Méthodes publiques
		
		public function setKind(type : String = "", elem : String = "") : void {
			setType(type == "" ? Type.AUCUN : type);
			setElem(elem == "" ? Elem.AUCUN : (type == Type.SOIGNE || type == Type.SOIGNE_FIXE || type == Type.SOIGNE_POUR ? Elem.SOIN : elem));
		}
		
		// Méthodes privées
		
	}

}